Hypnotizer is device which is used to control mind and is one of the favorite things of us. Here is a project called hypnotizer using arduino shown in figure 1, which control the motor and also rotate it into clock wise and anti close wise direction. A spiral disk shown in figure 2, attached to a motor and rotates as motor rotates to mesmerize the unfortunate victims.
Project Description of Hypnotizer Using Arduino
The Project Hypnotizer is divided into two sections:
- Hardware Section and
- Software Section
Hardware Section:– The circuit diagram of hypnotizer is build using An arduino duemilanove or clone, H-bridge arrangement, DC motor and few passive components.
The H-bridge arrangement is build using four MOSFET rather than bipolar transistor in order to reduce heating effect. As we know that gate current is needed to operate MOSFET. The output signal from D5 and D6 of arduino is given to the base of NPN transistors T1 and T2 through resistor R5 and R6 respectively. These transistor is used as switch and turn on the MOSFET T3 and T5 respectively.
Here, MOSFET T3 is connected in series with T6 while T4 and T5. The resistors R1 through R4 keep the N-channel get low while P-channel gate high. Capacitor C1 smoothes the pulse of power from the supply.
PARTS LIST OF HYPNOTIZER USING ARDUINO
Resistor (all ¼-watt, ± 5% Carbon) |
R1 – R6 = 10 KΩ |
Capacitor |
C1 = 470 µF/20V |
Semiconductors |
Arduino Duemilanove or clone
T1, T2 = BC548 T3, T5 = FQP27P06 (P-channel power MOSFET) T4, T6 = FQP33N10 (N-channel power MOSFET) |
Miscellaneous |
M1 = 6V DC motor |
Software:-
int t1Pin = 5;
int t3Pin = 6;
int speeds[] = {20, 40, 80, 120, 160, 180, 160, 120, 80, 40, 20,
-20, -40, -80, -120, -160, -180, -160, -120, -80, -40, -20};
int i = 0;
void setup()
{
pinMode(t1Pin, OUTPUT);
digitalWrite(t1Pin, LOW);
pinMode(t3Pin, OUTPUT);
digitalWrite(t3Pin, LOW);
}
void loop()
{
int speed = speeds[i];
i++;
if (i == 22)
{
i = 0;
}
drive(speed);
delay(1500);
}
void allOff()
{
digitalWrite(t1Pin, LOW);
digitalWrite(t3Pin, LOW);
delay(1);
}
void drive(int speed)
{
allOff();
if (speed > 0)
{
analogWrite(t1Pin, speed);
}
else if (speed < 0)
{
analogWrite(t3Pin, -speed);
}
}